package com.mail.dubbo.api;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.mail.model.db.UmsMenu;

import java.util.List;

/**
 * @author 吕永乐
 * @date 2022/06/21 17:17
 **/
public interface UmsMenuApi{
	/**
	 * 根据 menuIds 查询
	 * @param menuIds
	 * @return
	 */
	List<UmsMenu> getByIds(List<Long> menuIds);

	/**
	 * 查询所有菜单列表
	 * @return
	 */
	List<UmsMenu> getAll();

	/**
	 * 分页查询后台菜单(分页查询)
	 * @param pageNum
	 * @param pageSize
	 * @param parentId
	 * @return
	 */
	Page<UmsMenu> getListByPage(Long pageNum, Long pageSize, Long parentId);

	/**
	 * 根据ID获取菜单详情
	 * @param id
	 * @return
	 */
	UmsMenu getById(Long id);

	/**
	 * 修改后台菜单
	 * @param umsMenu
	 * @return
	 */
	Integer update(UmsMenu umsMenu);

	/**
	 * 修改菜单显示状态
	 * @param id
	 * @param hidden
	 * @return
	 */
	Integer updateHiddenById(Long id, Integer hidden);

	/**
	 * 根据ID删除后台菜单
	 * @param id
	 * @return
	 */
	Integer delete(Long id);

	/**
	 * 添加后台菜单
	 * @param umsMenu
	 * @return
	 */
	Integer create(UmsMenu umsMenu);
}
